package com.jmyd.sharding.domain.po;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.jmyd.sharding.domain.dto.SysOrderDto;
import lombok.Data;
import org.springframework.beans.BeanUtils;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @author samphin
 * @date 2024/6/20 10:48
 */
@Data
@TableName("sys_order")
public class SysOrder {
    /**
     * 主键ID
     */
    @TableId(type = IdType.AUTO)
    private String id;

    /**
     * 用户ID
     */
    private Long userId;

    /**
     * 订单名称
     */
    private String name;

    /**
     * 费用
     */
    private BigDecimal fee;

    /**
     * 优惠券状态(0:未使用 1:已使用 2:已过期)
     */
    private Integer status;

    /**
     * 订单号
     */
    private String code;

    /**
     * 描述
     */
    private String desc;

    /**
     * 是否删除 true=删除;false=未删除
     */
    private Boolean deleted;

    /**
     * 创建时间
     */
    private Date createTs;

    /**
     * 创建人
     */
    private String createdBy;

    /**
     * 修改时间
     */
    private Date updateTs;

    /**
     * 修改人
     */
    private String updatedBy;

    /**
     * 数据版本号
     */
    private Integer version;

    public SysOrder build(SysOrderDto dto) {
        BeanUtils.copyProperties(dto, this);
        return this;
    }
}